23

» WarCraft 3 / Путь способности

Похожие вопросы:

ответ
null - это нулевая строка, это не твой бро
"" - четкая строка без единого символа, это твой бро
да, игре похер, какой путь до модели, объект создается всегда
ответ
Бред несёте, ребята.
Шкала выбора - это зелёный круг вокруг объекта, а также ширину полоски HP
Физический размер - отвечает за его реальный размер, там есть минимальные значения, так как минимальный объект проходимости на 4х4 вроде, в том числе отвечает за дистанцию атаки по герою
Контрольный радиус (Наводка) - тут пока не могу точно сказать

Паладины - с минимальным физическим размером
Гномы - с нулевым контрольным радиусом
Чародеи - шкала выбора увеличена

ответ
Можно импортировать новую модель и прописать ей путь заменяемой модели.
Но "характеристики - эффекты" разве не ссылается на заклинания (баффы)?
Вот туман-эффект.
ответ
Пути в классике на какой-то версии были, что позволяло делать любого юнита призраком
Если это так, то такой же путь используется и в рефе. Но на самом деле такого эффекта нет, просто устанавливается прозрачность.

23

» WarCraft 3 / альфа каналы

Похожие вопросы:

ответ
Альфа — отдельный канал. Выделяй через лассо нужные области. И рисуй в 0% или 100% интенсивности альфы. В интерфейсе полупрозрачный режим не работает.
ответ
Как рисовать -с помощью графического редактора.
Как переводить в формат блп - с помощью конвентора на формат БЛП.
ответ
Если хочешь узнать что такое альфаканал поможет репетитор (Гугл), прозрачность и альфа-канал одно и тоже(почти), не умеешь попроси чтобы помогли сделать.
ответ
A.W.K.:
8gabriel8:
A.W.K., значит не с BLP Lab проблема а с твоим импортом или экспортом.
О, я попробовал использовать ту текстуру которую ты мне дал, сохранив её в blp. Всё получилось
Чёрт. Кажется я узнал в чём проблема
Я убирал текстуру земли на "нижний" слой, только сейчас вспомнил что нельзя ставить слой ниже слоя почвы. Спасибо что помогал мне :-)
ответ
~8gabriel8:
Если в blp сохранял через BLP Laboratory, то там надо при сохранении поставить «оставлять альфа-канал без изменений».

23

» WarCraft 3 / Новая способность

Похожие вопросы:

ответ
bladget, скорее всего (если у тебя Vista или W7 стоит), в старой папки остались "файлы совместимости", которые не удаляются просто так. В WoO много всякого мусора было...
ответ
Принц, принц! Что вы имеете ввиду?
ответ
Black Soul:
Это довольно-таки старый баг редактора, связанный с картами кампании. Редактирование тех полей, которые не должны быть у способности, ничего не дает, и это крайне неудобно. Чтобы такого не было, лучше создавать способности именно в кампании, а не в картах кампании.
ответ
Видимо у спосбности много уровней. Чтобы избежать микрофриза при получении, создайте юнита в начале игры, дайте ему способность и удалите его.
ответ
Ага, и тогда твои абилки можно будет абузить дропом предмета и подбором, делается это не удалением и заменой, а техникой

А вообще, сейчас можно динамично менять параметры способности, вплоть до иконки, далее думаю понятно, получил предмет, заменил изменил параметры, выбросил предмет, вернул старое

23

» WarCraft 3 / Невидимость

Похожие вопросы:

ответ
Думаю тут однозначно нужен GetLocalPlayer()
Ты уверен что нельзя заменить юнита на спецэффект ?
Ну вообще - можно создавать разных юнитов для разных игроков.
Таким образом одни игроки могут видеть юнита БЕЗ модели, а другие - нормального.
ответ
Даммикаст способности "Невидимость волшебницы"
ответ
Не могу поставить отрицательное значение. "Графика - положение кнопки", я правильно понял?
Надо шифт зажать и кликнуть по строчке координат в ро абилы, тогда можете задать отрицательные (тогда не нужно лезь mpq-архив для топорика работает).
А если панельные комманды интерфейса (move, patrol, stop, attack или др) - это не будет так работать, им не задашь в ро. либо удалить коммандные способность (некоторые удаления могут привести к необратимым последствиям, или крит) или это текстовик надо для комманд (это вариант). текстовик также можно и абилки прятать, но есть в этом необходимость, если можно задать в ро? не все комманды интерфейса нужно прятать посредством текстовика, например кнопка "строительство" имеет абилку с иконкой

Изменяем CommandStrings.txt Редактирование приказов ссылка пример в комментах можно также задать координаты (-2147483648,-2147483648) - эти координаты не всегда работают (пример не мог спрятать кнопку строительства и move). лучше (0,-11)
Описание кнопок и горячие клавиши (hot keys) находятся в Units/CommandStrings.txt
Изменить также можно в "дополнительно"->"игровой интерфейс"
ответ
По детекту урона, без мемхака - просто по урону от юнита, при этом создавать триггер детекта при замахе из инвиза, но такое себе.
Так же с помощью мемхака, там изи, т.к у виндвалка есть свой флаг, на который можно проверить отслеживая урон.

23

» WarCraft 3 / Рабочие и здания

Похожие вопросы:

ответ
основы потом могут быть за разную плату превращены в разные здания
Так и делай превращение, а не постройку здания "основой". Улучшай основу в выбранное здание - как башня Альянса улучшается до сторожевой, орудийной или магической.
ответ
можно. но смотря что вы хотите сделать (у вас триггер какой-то непонятный).
тут просто ресурсо-затратно вам показывать.

последовательность приказов никак нельзя задать как через shift, это не отслеживается в 1.26. но можно по-другому сделать. это если хотите сделать компьютерного бота

есть проблемы: надо проверять
  • есть ли ресурсы на здание
  • занят ли участок, чтобы туда отдавать приказ тема тема2 раздел 3.3
  • пройденное расстояние. пока юнит туда добежит, вы можете дать новый приказ. таймер или вэйты вам ничего не дают. надо подождать пока выполнит текущий приказ.

когда завершает строительство ищем новый участок, и даем приказ.
ответ
Событие - Юнит получил приказ с юнитом-целью.
Условия:
  • ИЛИ
    • Отданный приказ равно Чинить.
    • Отданный приказ равно Правый клик.
  • ИЛИ
    • Тип юнита-цели равно X.
    • Тип юнита-цели равно Y.
Действия:
Поставить на паузу Triggering Unit.
Отдать приказ Stop Triggering Unit.
Отпаузить Triggering unit.
ответ
Спеллбуки
Фреймы
Подмена юнита
ответ
мб отслеживать приказы, какие приказы будут у работника по 100% хп здания?
Или дамиком построить здание, и отказатся строить, у всех игроков - работники альянса (иначе это не пашет) при ремонте здания союзника, если больше никтот не чинит, здание делать за того кто чинит, если бросил чинить (работник отдал любой другой приказ или умер) вернуть в нейтрала, ну и так далее.

23

» WarCraft 3 / Работа с массивами в cJass

Похожие вопросы:

ответ
всегда по ссылке для handle-типов, всегда по значению для остальных
изменить это невозможно
никак, использовать глобалку, куда сохранять локалку перед нулением
нет, нету
ну или аналоги всего этого есть в продвинутых редакторах, не знаю, пусть те, кто ими пользуются, скажут

23

» WarCraft 3 / Создание ИИ

Похожие вопросы:

ответ
koloff, только что проверил, если нет анимации death у эффекта, то он исчезает спустя несколько секунд после вызова функции DestroyEffect
ответ
zontik2012 нет, не является утечкой. Если бы ты крепил эффект к точке, к примеру в позиции юнита, причем не удалял бы эту точку потом - то это была бы утечка
ответ
время смерти эффектов - игровая константа, по дефолту 5с, в константах ищи
ответ
Можно попробовать по шаманить с Blizzard.j или cheats.j в архивах игры, но только на старых версиях, до CASC.
ответ
Нет но...
Такое делал Ретера в рефордже и можно сделать через MME для, но это сильная модификация над варом и такое будет работать только у вас

23

» WarCraft 3 / Идеи для карты

Похожие вопросы:

ответ
То, что хочет автор, называется "дизайн-документ". Моя практика показала, что лучше всего использовать документы в гуглдокс (для некоторых вещей гуглтаблицы) с перекрёстными ссылками.
Также советую почитать статью и приложенный к ней дизайн-документ от разработчиков Dirty Bomb для вдохновения.
ответ
Я тоже не понимаю, что могло пойти "не так"?
Ты сам уже описал. По событию заносишь юнитов в группу. Потом нажимаешь способность "Атаковать" и юнит идут атаковать. Что может пойти "не так"?
ответ
Я ж ведь не просто так пишу, правда?
какое отношение этот пункт имеет к проблеме?
короче покопался в wtg файле
у тебя раньше использовался какой то странный файл гуишных функций
скорее всего он лежал либо в папке с вар3, либо в папке с джнгп и потом его удалили
одна из функций (возвращает булеан) вообще была представлена как набор пробелов
узнавать что это была за функция мне было лень поэтому я её заменил на false (использовалась в условии)
это было в триггере ctart, так что поправь там условие
так же заменил IssueImmediateOrderBJ на IssueImmediateOrder
вот открываемая в редакторе карта
проверь все гуишные триггеры на предмет ошибок
ответ
Начну с того, что уровни бывают как отрицательные, так и положительные. Что касается дракона, то:
  • С ним есть только единственная концовка, когда AnimalLevel становится -2.
  • При этом HumanLevel должен быть -4.
  • HumanLevel принимает значение -4 только в случае, когда
    • StoneLevel 1
    • ArcaneLevel -2
    • HumanLevel 1
    • AnimalLevel 4
  • ArcaneLevel -2 получается, когда
    • AnimalLevel 4
    • OptionInteger == OptionFire, такое происходит, если на этом ходу прожали огонь.
  • AnimalLevel 4 получается, когда
    • FireLevel 1
    • AnimalLevel 3
И того, нужная концовка выглядит так, 45123
ответ
я за, только скорее всего
на денежной основе
потому шо идей у самого тонны
Ну а вообще глянуть бы ещё что там у тебя за мапа и что за заклинания и что к чему
И какая версия варика?
Если для 1.26, то NOPE, а если выше то пиши в лс, кинь мапу и сразу распиши поподробнее что к чему, лучше в ВК

23

» WarCraft 3 / интересные карты

Похожие вопросы:

ответ
Используй блог для этих целей. А еще есть вот это, правда насчет него не совсем уверен.
ответ
У каждого свои вкусы, что для одного шлак, то для другого топовая мапа.
ответ
Ярг Восьмой:
Возможно это было сделано в старой версии JPNG NG 5d, попробуйте отредактировть этой версией, и найти ту триггерную фу-ию и изменить исп. кастом скрипт, который есть по ссылке, которую предложил факов. Как поменяете, сохраните.
Потом, откройте через JPNG Rebuild, и должно сработать.
Это ошибка возникает из-за несоответствие граф. части триггеров, для GUI посредством одного текстового файлика настройки для WE.
Должно помочь.
ответ
ответ
WinMPQ, MPQMaster, MPQEditor, пробуй и выбирай, что тебе больше понравится, лично мне больше нравится MPQMaster.

23

» WarCraft 3 / loop (цикл) + wait?

Похожие вопросы:

ответ
а хотя стоп
у players_count нету начального значения
вместо
local integer players_count
local integer half_players
надо
local integer players_count = 0
local integer half_players = 0
ответ
функцию Trig_BlockA_Func005Func011Func001C() убери нафиг
как и другие функции используемые для ифов и подобной херни
а вообще про это написано во всех статьях про jass
мб стоит прочитать сразу несколько статей а затем задавать сюда вопросы?

правила сайта
смотри пункт 10.3
ответ
расстояние до найденного ближайшего лучше не пересчитывать каждый раз, а хранить в переменной; еще можно обойтись без корня, а сравнивать сразу квадраты расстояний
возможно проблема в сравнении неинициализированной (например int i вместо int i = 1) переменной (unit FIRST == null)
вместо этого юзай boolean флаг или проверку на сохраненное расстояние до ближайшего, например что оно больше -1
ответ
set powers[power + offset] = count
забыл вот так стоял
если 32 бит то цикл 31 раз прибавляет ему то есть не актуально
чтобы быстрый поиск по значение и получить порядок
чтобы быстрый поиск по значение и получить порядок
например если у меня 3 бит значит будет выполнять порядок с 2 очереди до 0, или если 2 бит то очередь 2 до 0 ну суть понял?
чтобы не было целиком порядок и вычеслять количество байтов
переделал
внутри код
library xePower initializer Init
    globals
        /* --------------------------------------- */
        private integer       xe_count    = 1
        private integer       xe_powerMax = 0
        private integer array xe_powersOf2
        private integer array xe_helpers
        /* --------------------------------------- */
    endglobals
    
    function GetPower takes integer index returns integer
        local integer offset = 1
        
        if index < 0 then
            return 0
        endif
        
        if xe_powersOf2[index] == 0 then
            set xe_powersOf2[index] = xe_powersOf2[index - 1] * 2
            set xe_count = xe_count + 1
            
            loop
                exitwhen offset == xe_powersOf2[index]
                set xe_helpers[xe_powersOf2[index] + offset] = index
                set offset = offset + 1
            endloop
            
            set xe_powerMax = xe_powersOf2[index] + offset
        endif

        return xe_powersOf2[index] 
    endfunction
    
    function GetPowerHelper takes integer power returns integer
        if power <= 0 then
            return 0
        endif
        
        if power > xe_powerMax then
            set power = xe_powerMax
        endif
        
        return xe_helpers[power]
    endfunction
    
    private function Init takes nothing returns nothing
        set xe_powersOf2[0] = 1
        set xe_helpers[1] = 1
    endfunction
endlibrary
PS обновил
library xePower initializer Init
    globals
        /* --------------------------------------- */
        private integer       xe_powerMax = 0
        private integer array xe_powersOf2
        private integer array xe_helpers
        /* --------------------------------------- */
    endglobals
    
    function GetPower takes integer index returns integer
        local integer offset = 0
        
        if index <= 0 then
            return 0
        endif

        if xe_powersOf2[index] == 0 then
            set xe_powersOf2[index] = xe_powersOf2[index - 1] * 2

            loop
                exitwhen offset == xe_powersOf2[index]
                set xe_helpers[xe_powersOf2[index] + offset] = index
                set offset = offset + 1
            endloop
            
            set xe_powerMax = xe_powersOf2[index] + offset
        endif

        return xe_powersOf2[index] 
    endfunction
    
    function GetPowerHelper takes integer power returns integer
        if power <= 0 then
            return 0
        endif
        
        if power > xe_powerMax then
            set power = xe_powerMax
        endif
        
        return xe_helpers[power]
    endfunction
    
    private function Init takes nothing returns nothing
        set xe_powersOf2[1] = 1
        set xe_helpers[1] = 1
    endfunction
endlibrary
Терь можно делать подбор только важных а не целиком.
local integer index = GetPowerHelper(33)
            
            loop
                exitwhen IDs == 0 or index == 0
                if IDs >= GetPower(index) then
					// Выполняет правильно index (32,1) а раньше было (32,16,8 и так далее)
                    set IDs = IDs - GetPower(index)
                    set index = GetPowerHelper(IDs)
                else
                    set index = index - 1
                endif
            endloop

23

» WarCraft 3 / Проблемы с редактором

Похожие вопросы:

ответ
SirDragdord, никак, последние патчи баганые, там много чего не работает, играть там не вочто, хотите поиграть - 1.26а к вашим услугам, старшие патчи вара только для ознакомления и обучения, пока не вышел рефордж там нечего делать.
ответ
~8gabriel8:
Попробуй откатить общий доступ, подозреваю всё-таки его.
ответ
Xgm бот плохо работает... эй... 6 подобный вопрос

ответ
XGM Bot:
Похожие вопросы:

ответ
Не сов сем по теме, но близко - вот такое можно реализовать на новых функциях 1.31
Увы, полноценного инвентаря на аналогичных функциях пока не выкладывали в общий доступ, каждый пилит себе свою версию.
ответ
Razor_dex, сконвертируй карту, потом открой в стандартном 1.26 редакторе, удали комментарий Рок Лии\Otome Renge
Для гуи-гигантов это типичная болячка, просто битый комментарий который содержит в себе информацию о нескольких действиях, считай как обычный триггер только отображается как комментарий
Возникает такое скорее всего при копировании

P.S. странно что редакторы до 1.31 не обращают внимания на такой баг
ответ
Xgm бот плохо работает... эй... 6 подобный вопрос



23

» WarCraft 3 / Проблема с позиционным звуком

Похожие вопросы:

ответ
~8gabriel8:
Добавь в текст ссылки на все файлы, только AnimLookups.slk могу скачать.


И длительность звука сократил, и не с первого кадра анимации, как и у Стрелка сделал, и поместил внутри war3x.mpq, а не просто в карту импортировал, и поместил звук в модели отдельно, как и у Стрелка, а не привязал к кости, и много чего ещё пробовал, но так и не воспроизводит звук, да.
Уже удалил всё, но сейчас пришло в голову, что может быть таблицы надо было не в war3x.mpq помещать, а в war3Patch.mpq. Только это вряд ли, потому что даже при импорте в карту ничего не было.

23

» WarCraft 3 / Утечки в коде

Похожие вопросы:

ответ
интережер это число
а null это объект
число не является объектом
следовательно их нельзя сравнивать/приравнивать
ответ
Kind Ram, еще внезапно есть - это
Там изи детект всех видов урона и есть даже пример как это сделать....
ответ
погуглите anti leak library
ответ
nvc123, внутри GetRectCenter нет утечки
// blizzard.j:1772
function GetRectCenter takes rect whichRect returns location
    return Location(GetRectCenterX(whichRect), GetRectCenterY(whichRect))
endfunction
а эвент регистрируется 1 раз, так что можно забить
// blizzard.j:7959
function TriggerRegisterEnterRectSimple takes trigger trig, rect r returns event
    local region rectRegion = CreateRegion()
    call RegionAddRect(rectRegion, r)
    return TriggerRegisterEnterRegion(trig, rectRegion, null)
endfunction
Другое дело, что у order есть утечка, но это нативно, она минимальная и это никак не исправляется.
ответ
Могу протестировать карту с помощью системы, которая вычисляет кол-во объектов по каждому типу в каждый момент времени.

23

» WarCraft 3 / Отступы в коде

Похожие вопросы:

ответ
Последние две строки должны быть такие:
    call PlayGame()
endfunction
Замени их на:
    call StartBuildLoop()
    loop
        if GetPlayerState(Player(GetAiPlayer()),PLAYER_STATE_RESOURCE_FOOD_USED)> 79 then
            call SetHeroesFlee(false)
            call SetIgnoreInjured(false)
            call SetUnitsFlee(false)
            call SetGroupsFlee(false)
        elseif GetPlayerState(Player(GetAiPlayer()),PLAYER_STATE_RESOURCE_FOOD_USED) < 76 then
            call SetHeroesFlee(true)
            call SetIgnoreInjured(true)
            call SetUnitsFlee(true)
            call SetGroupsFlee(true)
        endif
        call Sleep(2.0)
    endloop
endfunction
Эти строки предполагалось вставлять в любой из бесконечных циклов
ответ
то есть ты убрал функции добавления способностей и оставил функции makepermanent, а потом удивился, что абилки пропали\не появились?

и пожалуйста, хватит накручивать себе рейтинг
ответ
Jack-of-shadow, ну конвертеров нету, руками ну или Find + Replace...

23

» WarCraft 3 / Видимость юнита

Похожие вопросы:

ответ
Делай дамики, которые находятся каждый на своём фиксированном расстоянии и угле от цели и перемещай их триггерно периодически. Не самое приятное занятие, но самое простое, для твоего случая
ответ
Значит, что-то неверно делаешь.
А, ну да, Extremator забыл указать, что модификатор нужно уничтожить перед обнулением.
Extremator всё указал, но незаметно.
ответ
Только мемхак, если вас не устраивают баффы детектов (волшебный огонь, посох чужих глаз, порошок прозрения).
Стоит отметить видимость юнита и детекция - разные опции, инвизер может быть обнаружен но не видем в тумане войны.
ответ
Я призываю берги!
Ась, что кого? для 126 отслеживание выделения в группе только на мемхаке, чистый 126 лесом, на рефордже через GetChild, вот ссылка, надо скопипастить на русском на Xgm
Но если принебречь этим множественным выбором и представить что выбор единичный
Тогда на гуи всё есть и получиться
C - Юнит выбран
У - Юнит такой-то, способность такая то есть, владелец выбранного=владелец выбирающего
Д -
set s = "" s = string
if p = GetLocalPlayer() then
set s = "Тут\\Типа\\Адрес\\Модели.mdx"
endif
call СоздатьСпецэффект(s,x,y) x,y - координаты, либо вместо них точка, либо виджет

а если по поводу вопроса
Но не понимаю, как именно применить тут эту систему
Система уже расписана, суть в том что у локального игрока создастся эффект с моделью, а у остальных с пустышкой и они ничего не увидят

set s = "" s = string пустышка

if p = GetLocalPlayer() then -- если локальный игрок тогда
set s = "Тут\\Типа\\Адрес\\Модели.mdx" -- модель уже не пустышка
ответ
не нужно.
Утечка с группами происходит потому что, незаметно для пользователя GUI, создается новая группа, которая не уничтожается и не обнуляется (в случае если происходит обращение к юнитам вокруг точки или в области). Обращаясь к группам игроков ничего не создается, происходит обращение к заранее созданным группам игроков.

23

» WarCraft 3 / Не работает простой триггер

Похожие вопросы:

ответ
ххххххх
Ну дык.
Ты пикаешь всех юнитов вокруг позиции кастера.
В т.ч. кастера.
Он же не враг сам себе)
так что выполнится оба действия могут)
и если там дамми есть - в ту же пачку, могут вызвать срабатывание.
Я фильтрую дамми по левелу, лвл дамми ставлю 0.
ответ
Filius Dei:
я так и не понял почему ты не можешь просто сделать как улучшение что не так с улучшением как в обычном случае.
дело в описании, вот и не могу так сделать,если сделать через улучшение здания, то при наведении на иконку вплывает подсказка, та же подсказка что будет и у самого здания в списке построек у светлячка, тоесть если делать через улучшение (по идее этот же юнит должен быть и в списке построек (а он там есть) ту подсказку которую я хочу будет лишней. вот пример: Древо жизни превращается в древо мира, при этом все союзные юниты вблизи древа получают повышеную регенерацию здоровья. (а теперь представь что эта подсказка будет в списке построек у светлячка, вообще не то)
Решил проблему путем выбора древа когда истекает однократный таймер, также подумал и решил что наверно лучше делать через способности, а не исследования. Но у меня остался один вопрос, если этот тригер отвечающий за применения этих способностей будет использовать несколько игроков, я не знаю будет ли использоватся оно коректно или нет, также и с отдельным триггером Таймер. Вот что вышло в данный момент:
ответ
function PolarProjectionX takes real x, real dist, real angle returns real
    return x + dist * Cos(angle * bj_DEGTORAD)
endfunction

function PolarProjectionY takes real y, real dist, real angle returns real
    return y + dist * Sin(angle * bj_DEGTORAD)
endfunction

function Trig_Hit_Actions takes nothing returns nothing
    local unit caster = GetTriggerUnit()
    local real face = GetUnitFacing(caster)
    local real x = PolarProjectionX(GetUnitX(caster), 100., face)
    local real y = PolarProjectionY(GetUnitY(caster), 100., face)
    local group targets = CreateGroup()
    local unit target
    call GroupEnumUnitsInRange(targets, x, y, 100., null)
    set target = FindClosestToXY(targets, x, y)
    if target != null then
        call UnitDamageTargetBJ(caster, target, 100., ATTACK_TYPE_CHAOS, DAMAGE_TYPE_UNIVERSAL)
        set target = null
    endif
    set caster = null
    call DestroyGroup(targets)
    set targets = null
endfunction
DopaMine, у тебя нет вызова FindClosestUnitXY.
ответ
Что мешало апгрейдом сделать или книжкой на хп? Про предметные абилки есть статьи, советую почитать.

23

» WarCraft 3 / Баг с порталами

Похожие вопросы:

ответ
Нашёл систему, где звук передаётся в таймер, который истекает через 0 секунд. В результате один и тот же звук может проигрываться несколько раз без всяких проблем. В инетике пишут мол это такой баг движка.

23

» WarCraft 3 / Вопрос по снаряду

Похожие вопросы:

ответ
ремувать юнита при смерти
тогда он точно урон не получит
ответ
Чтобы отследить созданного клона делается глобальный триггер с событием - Юнит вызывает еще 1 юнита, условие - юнит иллюзия, действие записать в bj_LastCreatedUnit == GetSummonedUnit(), после приказываем даммику кастануть жезл иллюзий в цель, сразу после приказа - берем bj_lastCreatedUnit - это наша иллюзия, записываем её в локалку или если действия мгновенные и не вызывают других триггеров юзающих эту глобалку то делаем с клоном все что нужно...
Т.к фрог юзает триггеры, он делает так, создает триггер, к нему вешает действие где в глобалку записывают GetSummonedUnit(), ну а после удаляет это действие у триггера, берет клона из глобалки, добавлает этому же триггеру другое действие и ставит событие на переодик 0.02 сек, чтобы двигать дамми снаряд, кароч юзает 1 триггер и для поиска клона и для движения дамми и для всего остального.
ответ
  1. вампиризмы работают лишь на основную атаку, не затрагивая модификаторы.
  2. не думаю, москиты не дружат с всякими проверками - подошел ли юнит к юниту или нет, просто давай неуяз, да и вовсе нафига тогда рабочие с ратушой? Так золото слабо дать или заставить даммиков проигрывать анимацию таскания мешков работникам.
  3. Еще раз, все модификаторы уроны, промахи, хреномахи рассчитываются в момент замаха, до успешного завершения атаки. Потом уже неважно, можно удалить юнита и снаряд достигнет цели (ну если ничего не помешает вроде промаха) и нанесет урон.
ответ
Понятно. Либо модель с 0 пилить либо забить, т.к. с этой моделью ничего не сделаешь (чтобы можно было перекрасить цвет триггерно)
ответ
бафф у них меняется
Меняется - можно поставить свой бафф, что сделан на основе оригинальный. Естественно, нельзя сделать так, чтобы отравленные стрелы станили.
Стан только у баша.

23

» IrInA Host Bot / проблема с коннектором

Похожие вопросы:

ответ
Попробуй другую версию коннектора.
ответ
Бот неправильно рассчитывает конфиг этой карты. Решения проблемы пока нет
ответ
В папке с игрой есть sl.exe sl_hidden.mix
ответ
rsfghd, Ну так у меня и так 1.26а, закинул в папку с игрой коннектор, и game.dll, сайт коннектор видит, сам коннектор меня подключает, но игры не появляются.

Проблема решена, я не тот коннектор запускал.

23

» WarCraft 3 / Неуязвимое здание с отображением хп

Похожие вопросы:

ответ
А много ли юнитов будут с хп баром? если серьёзно то решения нет и фрейм не найти этот, оно зашито в недра движка. Но опять таки Disable pre-selection вариант всё таки, если потом отрисовать кастомные хп бары через специальную модель, если она будет эффектом, то это не вызовет никакой доп нагрузки даже у 100 юнитов.

23

» WarCraft 3 / Вращение юнита

Похожие вопросы:

ответ
Doc:
Спасибо. Сделал через двухмерную матрицу поворота (тк поворачиваем только Х и У), и в итоге получили обычный поворот вектора и решение таково:
float newx = 150*Sin(j*bj_DEGTORAD)*Cos(i*bj_DEGTORAD)
float newy = 150*Cos(j*bj_DEGTORAD) 
sphere.z = 150+ 150*Sin(j*bj_DEGTORAD)*Sin(i*bj_DEGTORAD)
                        
sphere.x = newx*Cos(angle*bj_DEGTORAD) - newy*Sin(angle*bj_DEGTORAD) + x
sphere.y = newx*Sin(angle*bj_DEGTORAD) + newy*Cos(angle*bj_DEGTORAD) + y       
Если у кого-то получится упростить, то буду очень признателен.
ответ
В модел эдиторе перенеси нужную кость в начало координат и в ключевых фреймах пропиши одинаковые координаты для этой кости. Вот и проверишь.
ответ
Ниче не понял. Потом опять не понял.
В общем есть модель юнита, а есть модель снаряда. Это 2 разные модели. Они никак не связаны. То, что пропадает "снаряд" в модели юнита при броске( например топора) - это анимация атаки модели юнита. Если не нужно, чтобы топор не пропадал при броске - редактируй модель юнита в визе

23

» WarCraft 3 / Функция GetLocalPlayer()

Похожие вопросы:

ответ
если тебе звук нужен только для обладателя героя, то ты используешь вместо current camera view
position of hero[GetPlayerId(GetLocalPlayer())]
где hero - массив героев, индекс это номер игрока начиная с нуля
то есть hero[0] красный геро, hero[1] синий и т.д.
тогда это вернет позицию локального героя, а если герой не существует то центр карты
ответ
Еще один полезный тред
ответ
такой код вызовет десинх сразу.
а так да, взаимодействует
ответ
Работает, десинка не вызывает.
Иконки и положение кнопок так же можно менять локально.
ответ
В большинстве случаем игру багуют кривые руки.
просто я не пойму откуда ана берёт конкретную камеру у конкретного игрока
Для начала хотябы погуглили как работает GetLocalPlayer().
тут баг есть?
Нет